package com.tn.openrpc.channel
{

	/**
	 * <code>RemoteChannelRequest</code> represents a request sent over a <code>RemoteChannel</code>.
	 */
	[RemoteClass(alias="com.tn.openrpc.channel.RemoteChannelRequest")]
	public class RemoteChannelRequest
	{

		/*============================================================================*/
		/* Public Properties                                                          */
		/*============================================================================*/

		private var _args:Array;

		public function get args():Array
		{
			return _args;
		}

		public function set args(value:Array):void
		{
			if (_args == value)
				return;

			_args = value;
		}

		private var _methodName:String;

		public function get methodName():String
		{
			return _methodName;
		}

		public function set methodName(value:String):void
		{
			if (_methodName == value)
				return;

			_methodName = value;
		}

		private var _target:String;

		public function get target():String
		{
			return _target;
		}

		public function set target(value:String):void
		{
			if (_target == value)
				return;

			_target = value;
		}

		/*============================================================================*/
		/* Constructor                                                                */
		/*============================================================================*/

		/**
		 * Creates a new <code>RemoteChannelRequest</code>.
		 *
		 * @param target the target of the request.
		 * @param args   the arguments.
		 */
		public function RemoteChannelRequest()
		{
		}
	}
}
